#ifndef _TEST_GRAPHES_H_
#define	_TEST_GRAPHES_H_


#include"Graph.h"
#include<set>
#include<Windows.h>
#include<utility>
#include<vector>
#include<stdexcept>
#include<algorithm>
#include<crtdbg.h>
#include<fstream>

void detectedMemoryLeaks(const std::string& testType);

void unitTestsAdjacent();
void memoryCheckEmptyGraph();

void timeCheckEmptyGraphs();


void memoryCheckFullGraph();
void timeCheckFullGraph();

void memoryCheckRandomGraph();

void timeCheckRandomGraph();

void checkTopologySort(Graph& G, const std::vector<int>& answerOrder);

void timeAndTopologyCheckAcyclicGraph();

void memoryCheckAcyclicGraph();

void memoryCheckFunctionalGraphs();

void timeCheckFunctionalGraphs();

void unitTestsTopology();

void BFSUnitTests();

#endif

